課程資訊
課程名稱
演算法
Algorithms 
開課學期
108-1 
授課對象
管理學院  資訊管理學系  
授課教師
蔡益坤 
課號
IM2009 
課程識別碼
705 22200 
班次
 
學分
3.0 
全/半年
半年 
必/選修
必帶 
上課時間
星期二7,8,9(14:20~17:20) 
上課地點
管二103 
備註
本課程中文授課,使用英文教科書。部分週次之週二6有實習,地點同上課教室。
總人數上限:60人
外系人數限制:10人 
Ceiba 課程網頁
http://ceiba.ntu.edu.tw/1081alg2019 
課程簡介影片
 
核心能力關聯
核心能力與課程規劃關聯圖
課程大綱
為確保您我的權利,請尊重智慧財產權及不得非法影印
課程概述

本課程為計算機演算法設計與分析之入門課程,特色在於強調數學歸納法原理及其於演算法設計之應用。課程內容涵蓋Manber 所著教課書之主要章節,再輔以Cormen 等人所著教課書之部分內容。 

課程目標
使學生熟悉基本之演算法及其設計原理,並培養學生具備獨立設計與分析演算法的能力。 
課程要求
修習本課程前,宜先完成程式設計及資料結構兩項課程。
本課程包括兩次考試及六次作業;出席及上課情形亦將列入考評。 
預期每週課後學習時數
 
Office Hours
 
指定閱讀
1. Introduction to Algorithms - A Creative Approach, U. Manber, Addison-Wesley, 1989.
2. Introduction to Algorithms, Third Edition, T.H. Cormen, C.E. Leiserson, R.L. Rivest, and C. Stein, MIT Press, 2009. 
參考書目
1. Computer Algorithms / C++, Second Edition, E. Horowitz, S. Sahni, and S. Rajasekaran, Computer Science Press, 2007.
2. Algorithms in C, Third Edition: Parts 1--5, R. Sedgewick, Addison-Wesley, 2001. 
評量方式
(僅供參考)
   
課程進度
週次
日期
單元主題
第1週
9/10  Introduction; Mathematical Induction 
第2週
9/17  Mathematical Induction 
第3週
9/24  Analysis of Algorithms 
第4週
10/01  Design by Induction 
第5週
10/08  Design by Induction; Data Structures: A Supplement 
第6週
10/15  Data Structures: A Supplement; Searching and Sorting 
第7週
10/22  Searching and Sorting 
第8週
10/29  String Processing 
第9週
11/05  Midterm 
第10週
11/12  Graph Algorithms: Basic 
第11週
11/19  Graph Algorithms: Basic 
第12週
11/26  Graph Algorithms: Advanced 
第13週
12/03  Graph Algorithms: Advanced 
第14週
12/10  Dynamic Programming 
第15週
12/17  Reduction 
第16週
12/24  NP-Completeness 
第17週
12/31  NP-Completeness 
第18週
1/7  Final